package model

type ProductCreateRequest struct {
	Id           int64   `json:"id"`
	Name         string  `json:"name"`
	CategoryId   int64   `json:"category_id"`
	ProductType  int     `json:"product_type"`
	Description  string  `json:"description"`
	Price        float64 `json:"price"`
	Stock        int     `json:"stock"`
	Status       string  `json:"status"`
	ImageURL     string  `json:"image_u_r_l"`
	ExtraContext string  `json:"extra_context"`
	CreatedAt    int64   `json:"created_at"`
	UpdatedAt    int64   `json:"updated_at"`
}
type ProductUpdateRequest struct {
	Id           int64    `json:"id"`
	Name         *string  `json:"name"`
	CategoryId   *int64   `json:"category_id"`
	ProductType  *int     `json:"product_type"`
	Description  *string  `json:"description"`
	Price        *float64 `json:"price"`
	Stock        *int     `json:"stock"`
	Status       *string  `json:"status"`
	ImageURL     *string  `json:"image_u_r_l"`
	ExtraContext *string  `json:"extra_context"`
	CreatedAt    *int64   `json:"created_at"`
	UpdatedAt    *int64   `json:"updated_at"`
}
type ProductListRequest struct {
	Id           int64    `json:"id"`
	Name         *string  `json:"name"`
	CategoryId   *int64   `json:"category_id"`
	ProductType  *int     `json:"product_type"`
	Description  *string  `json:"description"`
	Price        *float64 `json:"price"`
	Stock        *int     `json:"stock"`
	Status       *string  `json:"status"`
	ImageURL     *string  `json:"image_u_r_l"`
	ExtraContext *string  `json:"extra_context"`
	CreatedAt    *int64   `json:"created_at"`
	UpdatedAt    *int64   `json:"updated_at"`
	Index        int      `json:"index"`
	Size         int      `json:"size"`
}
type ProductListResponse struct {
	Total int            `json:"total"`
	List  []*ProductInfo `json:"list"`
}
type ProductInfoRequest struct {
	Id int64 `json:"id"`
}
type ProductInfo struct {
	Id           int64   `json:"id"`
	Name         string  `json:"name"`
	CategoryId   int64   `json:"category_id"`
	ProductType  int     `json:"product_type"`
	Description  string  `json:"description"`
	Price        float64 `json:"price"`
	Stock        int     `json:"stock"`
	Status       string  `json:"status"`
	ImageURL     string  `json:"image_u_r_l"`
	ExtraContext string  `json:"extra_context"`
	CreatedAt    int64   `json:"created_at"`
	UpdatedAt    int64   `json:"updated_at"`
}
type ProductDeleteRequest struct {
	Id int64 `json:"id"`
}
